#include<stdio.h>

int t;
int a[10];
int flag[10];

void dfs(int n,int index){
    int i,j;
    if(index==n){
        for(i=0;i<n;i++)
            printf("%d ",a[i]);
        printf("\n");
    }
    for(j=1;j<=n;j++){
        if(flag[j]==1){
            a[index]=j;
            flag[j]=0;
            dfs(n,index+1);
            flag[j]=1;
        }
    }
}

int main(){
    int k;
    scanf("%d",&t);
    for(k=0;k<=9;k++)
        flag[k]=1;
        dfs(t,0);
        return 0;
}